import React, {Component} from 'react';

class Count extends Component {
    state = {
        count: 0
    }

    increment = () => {
        // 获取要选的值
        const {value} = this.selectNum
        console.log(value)
        const {count} = this.state
        this.setState({count:count+value*1}) // value*1表示强制转换为数值



    }
    decrement = () => {
        const {value} = this.selectNum

        const {count} = this.state
        this.setState({count:count-value*1})
    }
    incrementIfOdd = () => {
        const {value} = this.selectNum

        const {count} = this.state
        if(count %2 !== 0)
        this.setState({count:count+value*1}) // value*1表示强制转换为数值
    }
    incrementAsync = () => {
        const {value} = this.selectNum

        const {count} = this.state
        setTimeout(()=>{
            this.setState({count: count+value*1})
        },1000)
    }

    render() {
        return (
            <div>
                <h2>当前求和为:{this.state.count}</h2>
                <select ref={c => this.selectNum = c}>
                    <option value="1">1</option>
                    <option value="2">2</option>
                    <option value="3">3</option>
                </select>&nbsp;
                <button onClick={this.increment}>+</button>
                &nbsp;
                <button onClick={this.decrement}>-</button>
                &nbsp;
                <button onClick={this.incrementIfOdd}>和为奇数再加</button>
                &nbsp;
                <button onClick={this.incrementAsync}>异步加</button>

            </div>
        );
    }
}

export default Count;
